#ifndef _EQTEST_NODE_H
#define _EQTEST_NODE_H

#include <memory>

#include <eq/node.h>

namespace eqtest
{
    namespace obj_loader
    {
        class ObjectFile;
    }
    
    class TgaImage;
    
    class Node : public eq::Node
    {
        public:
            Node(eq::Config* parent);
            
            obj_loader::ObjectFile const& getObjFile() const { return *objFile; }
            
            TgaImage const& getAlbedo  () const { return *imgAlbedo; }
            TgaImage const& getNormal  () const { return *imgNormal; }
            TgaImage const& getSpecular() const { return *imgSpecular; }
            TgaImage const& getStretch () const { return *imgStretch; }
            TgaImage const& getRho_d   () const { return *imgRho_d; }
            
        private:
            std::unique_ptr<obj_loader::ObjectFile> objFile;
            std::unique_ptr<TgaImage> imgAlbedo, imgNormal, imgSpecular, imgStretch, imgRho_d;
    };
};

#endif
